package com.group4.edu.controller;


import com.baomidou.mybatisplus.extension.api.R;
import com.group4.edu.entity.SubjectVO;
import com.group4.edu.service.SubjectService;
import com.study.entity.OneSubject;
import com.study.util.LogUtils;
import com.study.util.ResponseResult;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import com.group4.edu.entity.Subject;

import com.group4.edu.service.SubjectService;
import com.study.util.ResponseResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import java.util.List;

/**
 * <p>
 * 课程科目 前端控制器
 * </p>
 *
 * @author cloud
 * @since 2022-03-10
 */
@RestController
@RequestMapping("/edu/subject")
@CrossOrigin
@Slf4j
public class SubjectController {
    @Autowired
    SubjectService subjectService;

    /**
     * 使用excel添加
     * @param file
     * @return
     */
    @PostMapping("addsubject")
    public ResponseResult addSubject(MultipartFile file) {
       subjectService.saveSubject(file,subjectService);
        return ResponseResult.SUCCESS;
    }

//    @GetMapping("findallsubject")
//    public ResponseResult<List<SubjectVO>> findAll() {
//        List<SubjectVO> subjectVOS = new ArrayList<>();
//        List<Subject> subjects = subjectService.findY();
//        subjects.forEach(s -> {
//            if (s.getParentId().equals("0")) {
//                SubjectVO subjectVO = new SubjectVO();
//                subjectVO.setId(s.getId());
//                subjectVO.setLabel(s.getTitle());
//                subjectVO.setChildren(new ArrayList<>());
//                subjectVO.setSort(s.getSort());
//                subjectVOS.add(subjectVO);
//            }
//        });
//
//        subjectVOS.forEach(svo -> {
//            subjects.forEach(s -> {
//                if (s.getParentId().equals(svo.getId())) {
//                    SubjectVO subjectVO = new SubjectVO();
//                    subjectVO.setId(s.getId());
//                    subjectVO.setLabel(s.getTitle());
//                    subjectVO.setSort(s.getSort());
//                    svo.getChildren().add(subjectVO);
//                }
//            });
//        });
//        return new ResponseResult<>(subjectVOS);
//    }


    @GetMapping("getAllSubject")
    public ResponseResult getAllSubject() {
        LogUtils.info(log,"查询所有学科");
        List<OneSubject> list = subjectService.getAllOneTwoSubject();
        return new ResponseResult(list);

    }

}

